package com.jic.order.rest.request;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author: gaolanyu
 * @date: 2020-01-23
 * @remark:
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CartOrderRequest extends UserRequest {
    @ApiModelProperty(notes = "购物车Id", required = true)
    private String shoppingCartId;
    @ApiModelProperty(notes = "结算虚拟单号", required = true)
    private String settleNum;
    @ApiModelProperty(notes = "使用的优惠券Id集合")
    private List<String> couponIds;
    @ApiModelProperty(notes = "分销人id")
    private Long distributorId;
    @ApiModelProperty(notes = "收货人省id")
    private long receiverProvinceId;
    @ApiModelProperty(notes = "收货人省名称")
    private String receiverProvinceName;
    @ApiModelProperty(notes = "收货人市id")
    private long receiverCityId;
    @ApiModelProperty(notes = "收货人市名称")
    private String receiverCityName;
    @ApiModelProperty(notes = "收货人区/县id")
    private long receiverCountryId;
    @ApiModelProperty(notes = "收货人区/县名称")
    private String receiverRegionName;
    @ApiModelProperty(notes = "收货人名字")
    private String receiverName;
    @ApiModelProperty(notes = "收货人电话")
    private String receiverPhone;
    @ApiModelProperty(notes = "收货人详细地址")
    private String receiverAddress;
    @ApiModelProperty(notes = "发票id")
    private Long invoiceId;
    @ApiModelProperty(notes = "支付金额")
    private BigDecimal payPrice;
    @ApiModelProperty(notes = "实付总金额，实付总金额=购买总金额+物流总费")
    private BigDecimal actualPayTotalAmount;
    @ApiModelProperty(notes = "销售总金额")
    private BigDecimal saleTotalAmount;
    @ApiModelProperty(notes = "优惠总金额，优惠总金额=销售总金额-购买总金额")
    private BigDecimal discountTotalAmount;

    @ApiModelProperty("虚拟商品充值手机号")
    private String virtualPhone;

    @ApiModelProperty("商品类型：1-常规商品;2卡券、3海购、4赠品、10实体卡、11虚拟卡、20券、 5生鲜产品、6增值服务、7其他、21积分商品;31-称重商品;41-虚拟充值")
    private Integer productType;
}
